home *** CD-ROM | disk | FTP | other *** search
/ MacHack 2000 / MacHack 2000.toast / pc / The Hacks / Softshoe / Lisa's Mac Parts / Views / Canvas Loops / InvalidCanvasLoop.cp < prev    next >
Text File  |  2000-06-23  |  585b  |  33 lines

  1. // InvalidCanvasLoop.cp
  2.  
  3. #ifndef InvalidCanvasLoop_h
  4. #include "InvalidCanvasLoop.h"
  5. #endif
  6.  
  7. void InvalidCanvasLoop::AdvanceToInvalid()
  8.   {
  9.     for ( ; Unfinished(); CanvasLoopBase::operator++() )
  10.       {
  11.         Canvas().RestrictToInvalid();
  12.         
  13.         if ( Canvas().Visible() )
  14.           {
  15.             canvasMaintainer.Use( Canvas() );
  16.             return;
  17.           }
  18.       }
  19.     canvasMaintainer.UseNone();
  20.   }
  21.  
  22. InvalidCanvasLoop::InvalidCanvasLoop( const DrawsSpontaneously& view )
  23.   : CanvasLoopBase( view )
  24.   {
  25.     AdvanceToInvalid();
  26.   }
  27.  
  28. void InvalidCanvasLoop::operator++()
  29.   {
  30.     CanvasLoopBase::operator++();
  31.     AdvanceToInvalid();
  32.   }
  33.